Skip to main content
TrustRadius
Jenkins

Jenkins

Overview

What is Jenkins?

Jenkins is an open source automation server. Jenkins provides hundreds of plugins to support building, deploying and automating any project. As an extensible automation server, Jenkins can be used as a simple CI server or turned into a continuous delivery…

Read more
Recent Reviews

TrustRadius Insights

Jenkins has been widely used for various use cases, making it the go-to choice for building, testing, and deploying projects. Its …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Reviewer Pros & Cons

View all pros & cons
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is Jenkins?

Jenkins is an open source automation server. Jenkins provides hundreds of plugins to support building, deploying and automating any project. As an extensible automation server, Jenkins can be used as a simple CI server or turned into a continuous delivery hub for any project.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

32 people also want pricing

Alternatives Pricing

What is CircleCI?

CircleCI is a software delivery engine from the company of the same name in San Francisco, that helps teams ship software faster, offering their platform for Continuous Integration and Continuous Delivery (CI/CD). Ultimately, the solution helps to map every source of change for software teams, so…

What is Buildkite?

Buildkite is a CI and build automation tool that combines the power of the user's own build infrastructure with the convenience of a managed, centralized web UI.

Return to navigation

Product Demos

CI/CD Pipeline Using Jenkins | Continuous Integration & Continuous Deployment | DevOps | Simplilearn

YouTube

Jenkins in Five Minutes

YouTube

12 Soft Pastel Techniques for Every Artist / PLUS Painting Demo

YouTube

DWTS - Troupe waltz demo w/opera singer Katherine Jenkins

YouTube

How to run Ansible playbook from Jenkins pipeline job | Ansible Jenkins Integration| DevOps Tutorial

YouTube

08 - Jenkins pipeline integration with git & maven | Jenkins Pipeline Tutorial

YouTube
Return to navigation

Product Details

What is Jenkins?

Jenkins Video

What is Jenkins?

Jenkins Integrations

Jenkins Technical Details

Deployment TypesSoftware as a Service (SaaS), Cloud, or Web-Based
Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

Jenkins is an open source automation server. Jenkins provides hundreds of plugins to support building, deploying and automating any project. As an extensible automation server, Jenkins can be used as a simple CI server or turned into a continuous delivery hub for any project.

Reviewers rate Performance highest, with a score of 8.9.

The most common users of Jenkins are from Small Businesses (1-50 employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(442)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Jenkins has been widely used for various use cases, making it the go-to choice for building, testing, and deploying projects. Its compatibility with GitHub has made it a popular option among users. One key use case is automating the build process, which has significantly reduced the level of effort required by engineers. By coordinating internal infrastructure teams with external development teams, Jenkins ensures consistent and automated deployments. It also proves invaluable in quickly bringing servers back up after power outages by running scripts. Another important use case is automating builds for different projects, reducing compilation time and allowing for sharing build scripts across repositories.

Jenkins plays a crucial role in code testing, documentation, code analysis, integration testing, and user acceptance testing. It ensures a smooth release process, performs feature builds, and handles deployments effectively. The software's strength lies in its ability to support continuous integration and automation. With its support for various technologies and platforms, Jenkins makes the development flow fluid. Additionally, it can easily scale out across multiple machines and support simultaneous builds, tests, and deployments.

Jenkins is commonly utilized as an R&D build and deploy pipeline, facilitating end-to-end and unit testing. It also finds extensive use in building and deploying AEM applications with separate instances for each project. Whether running API tests automatically or conducting automated UI tests, Jenkins helps streamline the quality assurance process. It is frequently employed to control builds for different environments such as dev, QA, and prod.

Organizations leverage Jenkins to automate CD/CI jobs across various applications, enabling automatic testing and deployment. It proves instrumental in building, testing, and deploying micro-service architectures at scale. Moreover, Jenkins generates reports and notifications throughout the process to improve efficiency and visibility.

With its flexibility in managing build servers and supporting cross-platform testing and automation tasks, Jenkins becomes an essential tool for code tests, configuration management, and test routine execution. It automates the CI/CD process by receiving commit events, building, testing, and deploying code seamlessly. Many organizations rely on Jenkins to deploy client projects in development and production environments, streamlining the deployment process.

Jenkins integrates with other tools and platforms such as SVN, GitHub, and Docker, providing a seamless workflow and enhancing productivity. It serves as a versioning system, storing build versions and facilitating code management. Furthermore, Jenkins assists in deploying applications to different environments while also aiding in server backups and restoration. The extensive range of plugins offered by Jenkins allows users to customize and enhance their experience with the software.

Overall, Jenkins has proven to be a straightforward and reliable tool for continuous integration once it is set up. It offers users the ability to test their code in a cloud environment, mimicking a production setting and facilitating faster deployment. With its robust features, Jenkins also serves as a versioning system, storing build versions and facilitating effective code management.

One of the key advantages of Jenkins is its seamless integration with other tools and platforms. It seamlessly integrates with SVN, GitHub, Docker, and more, allowing for enhanced workflow efficiency. This integration enables users to leverage their existing tools and workflows while incorporating Jenkins into their development process.

Furthermore, Jenkins is widely utilized for deploying applications to different environments such as development and production. Its ability to handle server backups and restoration is invaluable for maintaining data integrity and disaster recovery.

Additionally, Jenkins provides extensive reporting capabilities throughout the build and deployment process. This improves efficiency by providing visibility into each step of the pipeline, allowing teams to identify and resolve issues promptly.

The wide range of plugins offered by Jenkins enhances its functionality and allows users to customize their experience based on specific project requirements. This flexibility makes it a versatile tool that can be tailored to meet the needs of different teams and organizations.

In conclusion, Jenkins has established itself as a trusted solution for building, testing, and deploying projects across various industries. Its compatibility with popular platforms like GitHub combined with its automation capabilities make it an ideal choice for any organization looking to streamline their development process. By automating tasks, reducing effort, improving collaboration between teams, and providing crucial reporting features, Jenkins empowers teams to deliver high-quality software efficiently.

Automated Build Process: Many users have found the automated build process in Jenkins to be great, emphasizing its efficiency and reliability. They appreciate the seamless automation of tasks, from compiling code to deploying applications, without human intervention. The ability to run code against any testing suite and automatically rollback faulty programs has been particularly valued by reviewers.

Supportive Community: Jenkins has garnered praise for its extremely supportive community that readily offers assistance and troubleshooting guidance. Reviewers have specifically mentioned how valuable it is to have a strong network of experienced users who are willing to share their knowledge and help others overcome challenges.

Connectivity with Multiple Clouds: Users highly value Jenkins' support for connectivity with multiple clouds, including Azure, AWS, GCP, OCI, and more. This feature enables them to deploy applications across different platforms seamlessly. Several reviewers have expressed their satisfaction with this flexibility as it allows them to leverage various cloud services based on their specific needs.

Confusing and Outdated User Interface: Several users have criticized Jenkins for its confusing, outdated, and visually unappealing user interface. They feel that the interface could be improved with a more modern design using the latest UI technologies.

Difficult Setup Process: The setup process of Jenkins has been described as difficult by some users, particularly when it comes to configuring it to successfully run software builds and managing dependencies. This complexity can be frustrating for new users who are trying to get started with Jenkins.

Frequent Logouts: Users have experienced frequent logouts while using Jenkins, which can be irritating. This interruption in their workflow hinders their productivity and adds unnecessary frustration.

Users frequently recommend Jenkins as a helpful tool for new users, as it aids in avoiding issues. They believe it is an amazing tool for CI/CD and suggest using it in conjunction with GitHub. Many users argue that all projects should implement Jenkins and recommend using it for managing releases. Furthermore, they highlight Jenkins as a powerful tool for achieving continuous integration and strongly recommend its use, given its proven track record. Overall, Jenkins receives positive endorsements from users due to its user-friendliness and effectiveness in streamlining development processes.

Attribute Ratings

Reviews

(1-11 of 11)
Companies can't remove reviews or game the system. Here's why
Damon Darling | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
The workflow begins with developers submitting pull requests containing their code changes and documentation. Jenkins automatically triggers builds, running unit tests to verify functionality and code analysis tools to assess quality and adherence to standards. Integration testing follows, ensuring seamless component interaction. User acceptance testing occurs in a dedicated environment, allowing stakeholders and users to provide feedback. Jenkins generates reports and notifications throughout the process, keeping stakeholders informed. Finally, upon review and approval, Jenkins handles the deployment to the production environment. This streamlined approach improves efficiency, consistency, and visibility, ensuring high-quality software releases.
  • Automated Builds: Jenkins is configured to monitor the version control system for new pull requests. Once a pull request is created, Jenkins automatically triggers a build process. It checks out the code, compiles it, and performs any necessary build steps specified in the configuration.
  • Unit Testing: Jenkins runs the suite of unit tests defined for the project. These tests verify the functionality of individual components and catch any regressions or errors. If any unit tests fail, Jenkins marks the build as unsuccessful, and the developer is notified to fix the issues.
  • Code Analysis: Jenkins integrates with code analysis tools like SonarQube or Checkstyle. It analyzes the code for quality, adherence to coding standards, and potential bugs or vulnerabilities. The results are reported back to the developer and the product review team for further inspection.
  • User Interface: The Jenkins user interface can be complex and overwhelming for new users. Improving the user experience and making it more intuitive would help streamline the onboarding process and enhance usability for both beginners and experienced users.
  • Configuration Management: Managing and configuring Jenkins can be challenging, especially when dealing with large and complex projects. Simplifying the configuration process and providing more user-friendly options for managing pipelines and jobs would be beneficial.
  • Scalability: As projects grow and the number of builds and jobs increases, Jenkins can experience performance issues and scalability challenges. Optimizing Jenkins for larger-scale deployments and providing better support for distributed builds and parallelization would help address these limitations.
In a scenario where a small software development team is working on a simple project with minimal codebase and a straightforward deployment process, Jenkins may not be well suited. The overhead and complexity of setting up and maintaining Jenkins could outweigh the benefits of such a small-scale project. Additionally, the learning curve associated with Jenkins, along with its resource-intensive nature, might not be justifiable for a team with limited resources and a shared infrastructure. Alternative lightweight CI/CD solutions that offer streamlined workflows and require minimal configuration may provide a more suitable and efficient choice for small projects with straightforward requirements, focusing on simplicity, speed, and ease of use.
Richard Rout | TrustRadius Reviewer
Score 2 out of 10
Vetted Review
Verified User
Incentivized
We used Jenkins as our build server to execute build jobs and automated tests. The whole of engineering used it to build jobs and checking build status. Ensuring their branches would successfully run tests before merging to the master branch. It was a cheaper alternative to non-open-source competitors since it was free.
  • Pluggable.
  • Extensible.
  • Large development community.
  • It's not cloud-based.
  • It can be hard to figure out.
  • High learning curve.
  • Have to maintain infrastructure yourself.
If you have a very complex set-up and want full control of your build and test servers, then Jenkins will work for you. It's free and allows you to deploy it on your own machines and set up everything exactly how you want it. You need to invest a lot of time and work. It's not good if you just want a simple build and any other cloud service will do it for you, cheap or free.
Erlon Sousa Pinheiro | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
We're using Jenkins to perform part of our deployment pipeline. For our Development team, all the code tests are performed through Jenkins and on the DevOps side, all configuration management is performed by Jenkins integrated to Git, Puppet and Terraform. Also, their role on our day by day activities is quite important since we also use test routines on our configuration management pipeline and these tests are executed by Jenkins.
  • Manages the entire deployment pipeline, since the Git commit, going through several test types and the deployment.
  • Integrates with a bunch of other technologies.
  • Jenkins is amazingly flexible. The boundaries are your imagination. Just be ready to invest some time learning its several features.
  • Native integration with cloud providers. We still needing third-party plugins, that in some cases are not very efficient.
  • Needs better documentation.
  • A better front end. There is a lot of space for improvements in this specific aspect.
Jenkins has been serving us efficiently for a long time. It is quite reliable. Whether supporting developers work, DevOps work or staging/production deployment processing, Jenkins is a good choice. However, I believe there are some things that could be improved. When we need to execute parametrized builds, Jenkins could be more flexible in delivering us better screens (maybe something customizable) where we would insert variables to be used during the pipeline.
Gabriel Samaroo | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
The engineering team at several of my previous companies used Jenkins as a Continuous Integration and Automation tool. We used it for managing deployments of our applications across various environments, as well as a way to manually run various operations, such as running Tests or Invoking scripts. Jenkins has some good user permissions, that allow us to delegate specific responsibilities to various individuals without worry of someone doing something they shouldn't be allowed to. The setup is quite simple, and the software is very intuitive to use.
  • Continuous Integration - A commit into a Git code repository can kick off a Jenkins job, which in turn runs a Test suite and an application deployment
  • History - View of everything that's been run and by whom
  • Flexible - Tons of plugins that allows Jenkins to integrate with other software/tools used in your companies tech stack
  • Sometimes, plugins are needed for even basic tasks. It would be nice if the base functionality included more, so you don't need to search and install a bunch of plugins.
  • The UI can be a little clunky. Although there is a Blue Ocean project that rethinks the UI of Jenkins and is much nicer.
  • While the user management works, it is a little naive. You cannot do things in bulk or things that are TOO complex.
Jenkins is a great tool for teams looking to build automation and continuous integration into their development workflow. It is very easy to setup and works of all the major Operating Systems. Anyone can learn to use Jenkins because the software is quite intuitive. There is also a huge community surrounding Jenkins, which makes learning resources very easy to find.
Ramendra Sahu | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
This tool made the development flow fluid. Standout features are the continuous integration and a variety of support offered for creating packages for a number of technologies like, Java, C#, C++, etc and across multiple platforms that makes releases easier for faster roll out of business functionalities . It also has hundreds of plugins that can help you setup continuous integration and continuous delivery tool chain in quick time. You can easily scale out Jenkins across multiple machines, and support simultaneous large number of builds, tests and deployments across multiple platforms.
  • There are plenty of plugins available which helps us automate most of the jobs.
  • You can do anything with Jenkins as there are a huge number of community plugins. There is a learning curve of course but after you've mastered it's quick sailing.
  • The ability to schedule jobs on the go for your software build is very useful.
  • I particularly don't like the user interface. There's a lot of scope for improvement. I would actually say a complete revamp is required.
  • It is quite time consuming and not intuitive to create a job.
  • The new build pipelines feature is good but needs to be refined and issues needs to be ironed out.
It supports a rich set of plugins. The job configuration history plugin, for example, allows you to see history of past builds. Features are constantly getting enhanced with each release. Great active community support, which can help you if you are trying to do something new. Better than a lot of peers available in market. GitHub integration and pull request and support for automatic code review are truly great features.
Sagiv Frankel | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Jenkins is as our R&D build and deploy pipeline.
It allows us to:
1) Run end to end and unit tests every time we push new code.
2) Compile and bundle our code.
3) Deploy images and containers it to our Azure servers (Kubernetes).
4) Give us a nice dashboard to view that status of the tests, builds, and deployment.
  • It is heavily used in the industry and it's open source. This is a huge benefit as there is a lot of learning material and more importantly there are many friends that can help you set things up correctly.
  • The new UI/UX design is very user friendly and gives you good viability into your deployment pipeline status.
  • Lots of helpful plugins that are well supported.
  • Setup on Azure was quite straight forward.
  • It does require setup unlike other SaaS products like CircleCI which just require an account.
  • Lots of plugins is also a disadvantage as you need to install quite a few and installation errors are not always easy to decipher.
  • The UI could use better search options, especially through the logs.
If you haven't used Jenkins before and have a relatively simple and straightforward deployment setup I would not use my resources on Jenkins and go for a simpler, more SaaS-based solution. If you expect to have a lot of security demands and need control of your CI/CD pipeline I would use Jenkins for the get-go.
Jonathan Yu | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
I used Jenkins to manage both development and release builds of software at my two previous roles (IBM and Red Hat.) In both cases, each department had its own instances, so that plugins could be customized and managed on a per-team, per-product basis. It enables teams to manage a fleet of build servers (slaves in Jenkins parlance) that can build source code and run tests in an automated fashion, across platforms - this enables cross-platform software to be tested against various versions of Windows and Linux, for example. It can also be used for simple automation tasks, though other tools like Ansible are better suited for those tasks.
  • Minimal but extensible and flexible: Out of the box, Jenkins provides rudimentary capabilities to manage a host system with a framework for running build tasks and installing tools. There are many extension points available for plugins, and so a rich ecosystem of plugins is available. Many version control systems are supported, and integrations with other tools through plugins is excellent.
  • Cross-platform: Supports many platforms and architectures quite easily, thanks to its implementation in Java
  • Design focus: With Blue Ocean, you can get a nice-looking web interface for free
  • Rich ecosystem: As Jenkins has been around for quite some time, there is a rich ecosystem of blogs, tutorials, guides, and documentation available for performing most of the day-to-day tasks you would need. There are also various vendors like CloudBees that offer hosted services.
  • Ease of deployment: Jenkins can be deployed quite easily as a standalone JAR file. There are also system packages available for many Linux operating systems, such as Debian.
  • Difficult to manage build configurations: builds are generally configured through the user interface, which is easier to modify (especially for casual users rather than dedicated release engineers), but this results in changes that can be difficult to track, especially if multiple people have write access to the system. Some teams manage this by restricting people that can modify builds, but this creates a bottleneck. Ideally, the system would provide a good audit trail and change history, allowing changes to be tracked and reverted easily. Competing offerings get around this by version-controlling their configuration (e.g. Travis CI, Drone, AppVeyor) but this results in a slightly higher learning curve.
  • Quality of plugins varies widely: plugins are in various states of maintenance, and some are woefully incomplete and no longer updated. It can be difficult to know whether a plugin is well-written or not, or even actively maintained.
  • Builds are often not easily reproducible: By default, builds are run on the slave systems, which can retain state between runs that cause difficult-to-debug failures. It's possible to get around this by using VM snapshots and periodically reverting to clean systems, or by using the Docker plugin to run builds inside ephemeral containers.
  • Plugins are globally scoped: Because plugin versions and the Jenkins version are per-installation, companies with multiple teams typically run multiple instances of Jenkins. This leads to a maintenance nightmare and a lot of duplicated effort across teams keeping the systems patched, but is necessary because software requires different toolchains. It would be nice if Jenkins supported plugins on a "per tenant" basis, even though the running version would still be one-per-instance. Some platforms (such as OpenShift) get around this by running Jenkins inside a container, but that leaves out Windows slaves.
Jenkins works pretty well for what it does, is easy to use, and aggregates logs as you would expect. For simple builds (especially Java builds), Jenkins works fairly well. It can run on full systems or headless systems, so tests requiring a graphical interface (such as those driven by Selenium and the WebDriver API) have no issues running. It can be used to manage systems to some extent (installing and managing software across a cluster by SSHing into slave machines) but its ecosystem is not geared for that; for a general automation solution, look to Ansible instead.
Josh Quint | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use Jenkins to coordinate internal infrastructure teams with external development teams to make sure deployments are done in a consistent and automated fashion. This increases security in the infrastructure as well, as we do not need to create user accounts for the developer teams in the deployment environments. We use Jenkins to deploy PHP, Ruby, and .NET applications.
  • Build and deployment automation. You can build almost any code base from most standard code repositories and push the artifacts to the application servers.
  • MANY MANY plugins. The Plugin community is huge, so if Jenkins doesn't do something out of the box, there is probably a plugin to do it.
  • Multiple step orchestration. Any build can be created with many steps, including pre and post build. Additionally, you can tie builds together.
  • User management is a bit simple, and it is hard to manage users across multiple clients with the Jenkins internal database.
  • Automated deployment and configuration of Jenkins itself. The config files are hard to template out and change with each version.
  • Windows Slaves. Windows Java slaves are unreliable, especially when run as a service.
It's very well suited to deployments of interpreted languages, many other CI tools don't work with that type of deployment well. Linux Slave plugins work VERY well. Could use better support for user management, and multiple node deployments. Plugins are extensive, but there is a bit of steep learning curve when setting up Jenkins for the first time.
Score 6 out of 10
Vetted Review
Verified User
Incentivized
Jenkins is currently being used to automatically build releases when a change is detected in the code base.
  • Automatically creates a build and posts to company managed Jenkins page.
  • Provides ability to access several builds and clearly shows successful/unsuccessful builds with time stamps.
  • Ability to tie into other tools such as instant messaging apps/programs to get up-to-date information or broadcasts of when a build has started/completed.
  • Jenkins provides a 'pipeline' where a user can fine tune instructions for Jenkins to execute. This pipeline is hard to use via the browser as it cannot be resized.
To be fair, I'm still learning about tools to manage build automation and tests. However, Jenkins seems to be well suited to automate several builds a day and run unit and regression tests with each build. Builds that fail any tests are appropriately labeled.
March 30, 2017

Good son of Hudson

Score 10 out of 10
Vetted Review
Verified User
Incentivized
Jenkins is used across our company. Release Engineering department uses it to provide numerous streams of product component and integration builds, Software Development and Quality Assurance Departments use it as an outstanding Continuous Integration tool to seamlessly install new builds into various environments and to run test automation suites with automatic reports being sent to all stakeholders.
  • Delivery: Jenkins does a perfect job in hands of our Release Engineering department to provide new product builds to numerous projects in timely fashion.
  • Continuous Integration: Quality Assurance team does not start working on a System Test of the new build until it passed an automated Sanity Test in a CI environment.
  • Delivery (again): Development and QA teams no more spending hours looking at terminal screens while installing a new build to target environment and moreover we're now guarded from human errors in this automated process, thus saving precious time.
  • With growing audience of Jenkins within our company the performance and thus usability of the Jenkins control page becoming more and more critical issue. All projects are listed in a single page without paging and it's an issue when you have many hundreds of projects listed...
  • Learning curve is a little too steep: newcomers spend weeks to familiarize themselves with Jenkins. Configuring a project in Jenkins is not as intuitive as we would like it to be.
Jenkins is pretty good for Delivery and Continuous Integration which suits current needs of our company pretty well. It provides us with new builds from Release Engineering and supports Test Automation team. It may become slow with growth of amount of projects. However, if you need to focus on Continuous Deployment, you may want to look for other alternatives.
Masudur Rahman | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Most of the teams within the organization will roll their own Jenkins CI server to handle all build automation and CI/CD (continuous integration / continuous delivery) tasks. It allows for automation for building code, deploying applications and much more.
  • Jenkins is open source and there is a great community behind it, which drives rapid development for new plugins and upgrades to the software itself.
  • Jenkins allows for a great deal of customization to enable automation for any number of different workflows or development tasks.
  • It is simple to install and configure for even beginner developers!
  • Unfortunately, Jenkins does not have integration with all major software services. This is because it is open source and the community itself will create and publish various plugins to allow Jenkins to interface with these other services, but this means that for a specific service either we wait for the plugin to be available or we must develop our own.
  • Jenkins can be used on various operating systems, although it is not simple to use or configure a heterogenous Jenkins solution (where master node and/or worker nodes have different OSs).
For an advanced developer, Jenkins is well suited for almost all CI/CD scenarios.
Return to navigation